{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# importing the MLBox"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using Theano backend.\n",
      "/home/datageek/anaconda2/lib/python2.7/site-packages/sklearn/cross_validation.py:41: DeprecationWarning: This module was deprecated in version 0.18 in favor of the model_selection module into which all the refactored classes and functions are moved. Also note that the interface of the new CV iterators are different from that of this module. This module will be removed in 0.20.\n",
      "  \"This module will be removed in 0.20.\", DeprecationWarning)\n"
     ]
    }
   ],
   "source": [
    "from mlbox.preprocessing import *\n",
    "from mlbox.optimisation import *\n",
    "from mlbox.prediction import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "paths = [\"train_classification.csv\", \"test_classification.csv\"]\n",
    "target_name = \"Survived\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# reading and cleaning all files "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "reading csv : train.csv ...\n",
      "cleaning data ...\n",
      "CPU time: 0.653312921524 seconds\n",
      "\n",
      "reading csv : test.csv ...\n",
      "cleaning data ...\n",
      "CPU time: 0.48629283905 seconds\n",
      "\n",
      "> Number of common features : 11\n",
      "\n",
      "gathering and crunching for train and test datasets ...\n",
      "reindexing for train and test datasets ...\n",
      "dropping training duplicates ...\n",
      "dropping constant variables on training set ...\n",
      "\n",
      "> Number of categorical features: 5\n",
      "> Number of numerical features: 6\n",
      "> Number of training samples : 891\n",
      "> Number of test samples : 418\n",
      "\n",
      "> Top sparse features (% missing values on train set):\n",
      "Cabin       77.1\n",
      "Age         19.9\n",
      "Embarked     0.2\n",
      "dtype: float64\n",
      "\n",
      "> Task : classification\n",
      "0.0    549\n",
      "1.0    342\n",
      "Name: Survived, dtype: int64\n",
      "\n",
      "encoding target ...\n"
     ]
    }
   ],
   "source": [
    "rd = Reader(sep = ',')\n",
    "df = rd.train_test_split(paths, target_name)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "computing drifts ...\n",
      "CPU time: 0.375258922577 seconds\n",
      "\n",
      "> Top 10 drifts\n",
      "\n",
      "('PassengerId', 1.0)\n",
      "('Name', 0.99408885871654995)\n",
      "('Ticket', 0.69158126654553254)\n",
      "('Cabin', 0.19101400836012727)\n",
      "('Embarked', 0.076694741085090445)\n",
      "('SibSp', 0.042687046335085466)\n",
      "('Fare', 0.034880025978640816)\n",
      "('Sex', 0.033888348738664087)\n",
      "('Pclass', 0.027642879511516671)\n",
      "('Parch', 0.019840186517769975)\n",
      "\n",
      "> Deleted variables : ['Name', 'PassengerId', 'Ticket']\n",
      "> Drift coefficients dumped into directory : save\n"
     ]
    }
   ],
   "source": [
    "dft = Drift_thresholder()\n",
    "df = dft.fit_transform(df)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# tuning"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/datageek/anaconda2/lib/python2.7/site-packages/mlbox/optimisation/optimiser.py:78: UserWarning: Optimiser will save all your fitted models into directory 'save/joblib'. Please clear it regularly.\n",
      "  +str(self.to_path)+\"/joblib'. Please clear it regularly.\")\n"
     ]
    }
   ],
   "source": [
    "opt = Optimiser(scoring = 'accuracy', n_folds = 3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "No parameters set. Default configuration is tested\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 'mean', 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'max_depth': -1, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'min_child_samples': 10, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.808080808081\n",
      "VARIANCE : 0.0119832528081 (fold 1 = 0.79797979798, fold 2 = 0.824915824916, fold 3 = 0.801346801347)\n",
      "CPU time: 2.34652495384 seconds\n",
      "\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "0.80808080808080807"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "opt.evaluate(None, df)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.011643291262151802, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 7, 'boosting_type': 'gbdt'}\n",
      "\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/datageek/anaconda2/lib/python2.7/site-packages/sklearn/linear_model/logistic.py:1228: UserWarning: 'n_jobs' > 1 does not have any effect when 'solver' is set to 'liblinear'. Got 'n_jobs' = -1.\n",
      "  \" = {}.\".format(self.n_jobs))\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "MEAN SCORE : accuracy = 0.802469135802\n",
      "VARIANCE : 0.018713054995 (fold 1 = 0.784511784512, fold 2 = 0.828282828283, fold 3 = 0.794612794613)\n",
      "CPU time: 2.45729398727 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'entity_embedding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.02770267453219974, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 5, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.786756453423\n",
      "VARIANCE : 0.017459426696 (fold 1 = 0.774410774411, fold 2 = 0.811447811448, fold 3 = 0.774410774411)\n",
      "CPU time: 16.4360151291 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'random_projection'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.20394988455845064, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 6, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.803591470258\n",
      "VARIANCE : 0.0151411195996 (fold 1 = 0.791245791246, fold 2 = 0.824915824916, fold 3 = 0.794612794613)\n",
      "CPU time: 0.390267848969 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'random_projection'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.08900580169009281, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 7, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.800224466891\n",
      "VARIANCE : 0.0151411195996 (fold 1 = 0.781144781145, fold 2 = 0.818181818182, fold 3 = 0.801346801347)\n",
      "CPU time: 0.800060987473 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'random_projection'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.26578401818185715, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 5, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.799102132435\n",
      "VARIANCE : 0.00839878201296 (fold 1 = 0.787878787879, fold 2 = 0.808080808081, fold 3 = 0.801346801347)\n",
      "CPU time: 0.707828998566 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.013598304245691507, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 3, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.811447811448\n",
      "VARIANCE : 0.0145471171681 (fold 1 = 0.79797979798, fold 2 = 0.83164983165, fold 3 = 0.804713804714)\n",
      "CPU time: 0.535552978516 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.2572371378945052, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 5, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.808080808081\n",
      "VARIANCE : 0.0125981730194 (fold 1 = 0.794612794613, fold 2 = 0.824915824916, fold 3 = 0.804713804714)\n",
      "CPU time: 0.499388933182 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.2819215389533621, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 6, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.806958473625\n",
      "VARIANCE : 0.0156323100754 (fold 1 = 0.791245791246, fold 2 = 0.828282828283, fold 3 = 0.801346801347)\n",
      "CPU time: 0.667119979858 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'entity_embedding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.08061005410476896, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 5, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.786756453423\n",
      "VARIANCE : 0.017459426696 (fold 1 = 0.774410774411, fold 2 = 0.811447811448, fold 3 = 0.774410774411)\n",
      "CPU time: 2.49556398392 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.09987272020289732, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 4, 'boosting_type': 'gbdt'}\n",
      "\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "MEAN SCORE : accuracy = 0.805836139169\n",
      "VARIANCE : 0.0135612188256 (fold 1 = 0.794612794613, fold 2 = 0.824915824916, fold 3 = 0.79797979798)\n",
      "CPU time: 0.355047941208 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'random_projection'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.05152651209916837, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 3, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.800224466891\n",
      "VARIANCE : 0.0111105442611 (fold 1 = 0.787878787879, fold 2 = 0.814814814815, fold 3 = 0.79797979798)\n",
      "CPU time: 0.636468887329 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'random_projection'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.14270182740491733, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 6, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.803591470258\n",
      "VARIANCE : 0.0151411195996 (fold 1 = 0.791245791246, fold 2 = 0.824915824916, fold 3 = 0.794612794613)\n",
      "CPU time: 0.61897611618 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'label_encoding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.08953777178878437, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 6, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.806958473625\n",
      "VARIANCE : 0.0156323100754 (fold 1 = 0.791245791246, fold 2 = 0.828282828283, fold 3 = 0.801346801347)\n",
      "CPU time: 0.601679801941 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'random_projection'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.10609321091353742, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 6, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.803591470258\n",
      "VARIANCE : 0.0151411195996 (fold 1 = 0.791245791246, fold 2 = 0.824915824916, fold 3 = 0.794612794613)\n",
      "CPU time: 0.555657148361 seconds\n",
      "\n",
      "\n",
      "##################################################### testing hyper-parameters... #####################################################\n",
      "\n",
      ">>> NA ENCODER :{'numerical_strategy': 0, 'categorical_strategy': '<NULL>'}\n",
      "\n",
      ">>> CA ENCODER :{'strategy': 'entity_embedding'}\n",
      "\n",
      ">>> FEATURE SELECTOR :{'threshold': 0.299652183464118, 'strategy': 'l1'}\n",
      "\n",
      ">>> ESTIMATOR :{'num_leaves': 31, 'reg_alpha': 0, 'subsample_for_bin': 50000, 'colsample_bytree': 0.8, 'silent': True, 'learning_rate': 0.05, 'nthread': -1, 'min_child_weight': 5, 'strategy': 'LightGBM', 'n_estimators': 500, 'subsample': 0.9, 'reg_lambda': 0, 'subsample_freq': 1, 'min_child_samples': 10, 'max_bin': 255, 'objective': 'binary', 'min_split_gain': 0, 'seed': 0, 'max_depth': 5, 'boosting_type': 'gbdt'}\n",
      "\n",
      "\n",
      "MEAN SCORE : accuracy = 0.786756453423\n",
      "VARIANCE : 0.017459426696 (fold 1 = 0.774410774411, fold 2 = 0.811447811448, fold 3 = 0.774410774411)\n",
      "CPU time: 2.62956809998 seconds\n",
      "\n",
      "\n",
      "\n",
      "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n",
      "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ BEST HYPER-PARAMETERS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n",
      "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n",
      "\n",
      "{'est__max_depth': 3, 'fs__threshold': 0.013598304245691507, 'ce__strategy': 'label_encoding', 'ne__numerical_strategy': 0}\n"
     ]
    }
   ],
   "source": [
    "space = {\n",
    "    \n",
    "        'ne__numerical_strategy':{\"search\":\"choice\",\n",
    "                                 \"space\":[0]},\n",
    "        'ce__strategy':{\"search\":\"choice\",\n",
    "                        \"space\":[\"label_encoding\",\"random_projection\", \"entity_embedding\"]}, \n",
    "        'fs__threshold':{\"search\":\"uniform\",\n",
    "                        \"space\":[0.01,0.3]},    \n",
    "        'est__max_depth':{\"search\":\"choice\",\n",
    "                                  \"space\":[3,4,5,6,7]}\n",
    "    \n",
    "        }\n",
    "\n",
    "best = opt.optimise(space, df,15)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "fitting the pipeline ...\n",
      "CPU time: 0.33674621582 seconds\n"
     ]
    },
    {
     "data": {
      "image/png": "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\nzz6bj3zkIwBcddVV9O7dm3333XelfscddxyHHXbYSm1aO42Njb5/KgVzUWVgHqoszEWVhbmoaqj1\nMsAVS/gaM3PFjKl/fLshrcb+MTN/AhwEDI2I7dv26eC1pBJZtGgRCxcubDm+8847GTx48Ep9dt11\nV+6++24A5syZw8yZM+nfvz/Lli1j/vz5ADz55JM8+eSTHHzwwdV9AEmSJEnSelPrDdZ3B5Zn5nNF\nUz3wF6D1v1I3AY4GbqAyg+q3xdjDgdszM4H3U/k2wQXFmI9HxAVUlgE2AG1na0kqkTlz5nDUUUcB\nsHTpUo477jgOPfRQLr/8cgDGjh3LOeecwwknnEBdXR2ZyXe/+1169erFkiVLWmZbbb311lx33XV0\n7+5MSUmSJEnaUNX6X3Q9gB9GRE9gKfAHKvtI/aJVn0XAvhHxTeAV4NNF+2eB70fEG8XYMZm5LCIA\nngTuBXoB/9Z2vypJ5dK/f3+mTZu2SvvYsWNbjnfccUfuvPPOVfpsvvnmzJgxo1PjkyRJkiRVT633\nrJoCfKidUw2t+vToYOxnVnPpJzPz+HcWnSRJkiRJkqqt5ntWSZIkSZIkSSvUehngepeZ36p1DJIk\nSZIkSVo3zqySJEmSJElSaViskiRJkiRJUmlYrJIkSZIkSVJpbHR7Vq2LLTbtxswLD691GOriGhsb\nmTWmodZhSJIkSZJUU86skiRJkiRJUmlYrJIkSZIkSVJpWKySJEmSJElSaViskiRJkiRJUmm4wTqw\nuHkZ/c6+rdZhqIs7rW4pDbUOQpIkSZKkGnNmlSRJkiRJkkrDYpUkSZIkSZJKw2KVJEmSJEmSSsNi\nlSRJkiRJkkrDYpUkSZIkSZJKw2KVpFX069ePuro66uvrGT58+CrnM5NTTz2VAQMGMGTIEB5//PGW\nc4ceeig9e/Zk9OjR1QxZkiRJkrSR6F7rANZERHwDOA5YBiwH/jkzH65tVNLG7d5776VXr17tnvuf\n//kfnnvuOZ577jkefvhh/uVf/oWHH678J3nGGWfwxhtvcMUVV1QzXEmSJEnSRqL0M6siYgQwGtg7\nM4cAHwVm1zYqqWu79dZbOf7444kIPvjBD7JgwQJeeuklAA466CC22mqrGkcoSZIkSdpQlb5YBfQF\n5mXmmwCZOS8zX4yIYRFxX0RMiYg7IqJvRHSPiEcjogEgIi6IiO/UMnhpQxQRHHzwwQwbNowJEyas\n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\nbd9qdfwT4CftjPtkO5e7sPiRJEmSJEnSBqQsywAlSZIkSZIki1WSJEmSJEkqD4tVkiRJkiRJKg2L\nVZIkSZIkSSqNUnwbYK1tsWk3Zl54eK3DkCRJkiRJ6vKcWSVJkiRJkqTSsFglSZIkSZKk0rBYJUmS\nJEmSpNKwWCVJkiRJkqTScIN1YHHzMvqdfVutw1CJzHLDfUmSJEmSasKZVZIkSZIkSSoNi1WSJEmS\nJEkqDYtVkiRJkiRJKg2LVZIkSZIkSSoNi1WSJEmSJEkqDYtVUsktW7aMvfbai9GjR69y7s033+TT\nn/40AwYMYL/99mPWrFkAvPXWW5x44onU1dUxdOhQGhsbqxu0JEmSJEnr6G2LVRGxLCKmtvo5e00v\nHhENEfGbdxJgRDRGxPB1HPuO7y/V2vjx4xk4cGC756666iq23XZb/vCHP/C1r32Ns846C4Arr7wS\ngOnTpzN58mROO+00li9fXrWYJUmSJElaV2sys2pxZta3+rmw06MqRES3at1LKqPnn3+e2267jZNO\nOqnd87feeiuf+9znADj66KO5++67yUxmzJjBgQceCMAOO+xAz549eeyxx6oWtyRJkiRJ62qdlwFG\nxKyIuKCYbfVYROwdEXdExB8jYmyrrltHxG0RMTMiLo+ITYrxPynGPRUR57W57ncj4nHgU63aN4mI\n/4yIbxevD46IByPi8Yi4OSJ6FO2HRsQzxfhPruvzSWXw1a9+lYsuuohNNmn/P9UXXniBXXbZBYDu\n3buzzTbbMH/+fIYOHcqvf/1rli5dyp///GemTJnC7Nmzqxm6JEmSJEnrpPsa9NkiIqa2en1BZt5Y\nHP81M+sj4vvAfwIfBjYHfg9cXvTZF9gT+AswiUoB6RfANzLzb8XsqbsjYkhmPlmMmZ+ZewMUha/u\nwM+A32fmdyKiF/BN4KOZuSgizgK+HhEXAVcCBwJ/AFbEuYqIOBk4GaBXr96Mq1u6Bm+Fuopa7PHU\n1NS00n0ffPBBmpubWbhwIVOnTmX+/PmrxLVo0SIefPBBevfuDcCSJUt44IEH2G233Zg8eTJ77LEH\nffr0YY899uDpp5927yqtkba5KNWKuagyMA9VFuaiysJcVDWsSbFqcWbWd3Du18Wf04EembkQWBgR\nb0ZEz+LcI5n5J4CIuB7Yn0qx6piiYNQd6EuloLWiWNW2yHQFcFNmfqd4/cGi/wMRAbAZ8CCwB/Dn\n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\nAABJRU5ErkJggg==\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x7f2dfb908c90>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "> Feature importances dumped into directory : save\n",
      "\n",
      "predicting ...\n",
      "CPU time: 0.10400390625 seconds\n",
      "\n",
      "> Overview on predictions : \n",
      "\n",
      "        0.0       1.0  Survived_predicted\n",
      "0  0.918935  0.081065                   0\n",
      "1  0.884135  0.115865                   0\n",
      "2  0.949983  0.050017                   0\n",
      "3  0.823442  0.176558                   0\n",
      "4  0.685111  0.314889                   0\n",
      "5  0.756447  0.243553                   0\n",
      "6  0.505878  0.494122                   0\n",
      "7  0.918484  0.081516                   0\n",
      "8  0.162236  0.837764                   1\n",
      "9  0.964890  0.035110                   0\n",
      "\n",
      "dumping predictions into directory : save ...\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<mlbox.prediction.predictor.Predictor instance at 0x7f2e3471ccb0>"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prd = Predictor()\n",
    "prd.fit_predict(best, df)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python3",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.8"
  },
  "latex_envs": {
   "LaTeX_envs_menu_present": true,
   "autoclose": false,
   "autocomplete": true,
   "bibliofile": "biblio.bib",
   "cite_by": "apalike",
   "current_citInitial": 1.0,
   "eqLabelWithNumbers": true,
   "eqNumInitial": 1.0,
   "hotkeys": {
    "equation": "Ctrl-E",
    "itemize": "Ctrl-I"
   },
   "labels_anchors": false,
   "latex_user_defs": false,
   "report_style_numbering": false,
   "user_envs_cfg": false
  },
  "toc": {
   "base_numbering": 1.0,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 1
}
